<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<ui:composition template="Master.xhtml"
                xmlns="http://www.w3.org/1999/xhtml"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:ui="http://java.sun.com/jsf/facelets"           
                xmlns:p="http://primefaces.org/ui">

    <ui:define name="title">Inventario</ui:define> 
    <ui:insert name="cssk"></ui:insert> 
    <ui:define name="scritpK">
        
    </ui:define> 
    
    <ui:define name="content">
        <h:form id="frmInventario" >
            <p:toolbar>
                <f:facet name="left">
                    <p:button id="btnVolver" icon="ui-icon-arrowreturnthick-1-w" value="Volver" outcome="ListaInventarios"/>
                    <p:commandLink value="Agregar Campos" action="#{inventarioBean.addInventarioCampo}" update="pnlMain"/>
                </f:facet>
                <f:facet name="right">
                    <p:commandButton id="btnGuardarInventario" icon="ui-icon-disk" value="Guardar Inventario" action="#{inventarioBean.saveInventario}" update="grid" ajax="false"/>
                </f:facet>
            </p:toolbar>
            <br></br>
            <h:inputHidden value="#{inventarioBean.inventarioDTO.idInventario}"/>
            <p:growl id="gwlInventario" showDetail="true"/>
            <p:messages id="messages" showDetail="true"/>
            <p:fieldset legend="Editar Inventario" >
                <p:panel id="pnlMain">
                    <h:panelGrid style="margin: 0 auto;">
                        <h:panelGrid id="grid" cellpadding="1" columns="2">
                            <p:outputLabel for="txtIdVen" value="Recibidor:" />
                            <h:panelGrid>
                                <p:autoComplete id="txtIdVen" dropdown="true" value="#{inventarioBean.vendedorDTO}" completeMethod="#{vendedorBean.completeVendedor}"
                                                var="vendedorDTO" itemLabel="#{vendedorDTO.nombre}" itemValue="#{vendedorDTO}" converter="vendedorDTOConverter" forceSelection="true" rendered="#{inventarioBean.habBusquedaVendedor}">
                                    <p:ajax event="itemSelect" listener="#{inventarioBean.agregarVendedor()}" update="txtVenNombre"/> 
                                    <p:column>
                                        <h:outputText value="#{vendedorDTO.idVendedor}"/>
                                    </p:column>
                                    <p:column>
                                        <h:outputText value="#{vendedorDTO.nombre}"/>
                                    </p:column>
                                    <p:column>
                                        <h:outputText value="#{vendedorDTO.apellido}"/>
                                    </p:column>
                                </p:autoComplete>
                                <p:inputText id="txtVenNombre" value="#{inventarioBean.inventarioDTO.vendedorDTO.nombre}" rendered="#{!inventarioBean.habBusquedaVendedor}">
                                </p:inputText>
                                <p:commandLink value="#{inventarioBean.valueButtonVendedor}" actionListener="#{inventarioBean.buscarVendedor()}" update="pnlMain"></p:commandLink>
                            </h:panelGrid>                            
                            <p:outputLabel for="txtNumGuia" value="Número de Guía:" />
                            <p:inputText id="txtNumGuia" value="#{inventarioBean.inventarioDTO.numGuia}">
                            </p:inputText>
                            <p:outputLabel for="txtNumFactura" value="Número de Comprobante:"/>
                            <p:inputText id="txtNumFactura" value="#{inventarioBean.inventarioDTO.numFactura}">
                            </p:inputText>
                            <p:outputLabel for="txtNomLugar" value="Lugar:"/>
                            <p:inputText id="txtNomLugar" value="#{inventarioBean.inventarioDTO.nomLugar}">
                            </p:inputText>
                            <p:selectOneMenu id="txtEstado" value="#{inventarioBean.inventarioDTO.estado}" style="width:125px">
                                <f:selectItems value="#{dataBean.estado}"/>
                            </p:selectOneMenu>
                            <p:outputLabel id="txtFecha" value="#{inventarioBean.inventarioDTO.fecha}">
                                    <f:convertDateTime pattern="dd-MM-yyyy" />
                            </p:outputLabel>
                            
                            <h:panelGroup rendered="#{not empty inventarioBean.labels}">
                                <ui:repeat value="#{inventarioBean.labels}" varStatus="loop" var="label">
                                    <tr>
                                    <td>
                                    <p:inputText id="label" value="#{label.nameLabel}" rendered="#{label.nameLabel == null || label.nameLabel == ''}">
                                    <p:watermark for="label" value="Label" />
                                    </p:inputText>
                                    <p:outputLabel for="label" value="#{label.nameLabel}:" rendered="#{label.nameLabel != ''}"/>
                                    </td>
                                    <td>
                                    <p:inputText id="value" value="#{label.valueLabel}">
                                    <p:watermark for="value" value="Value" />
                                    </p:inputText>
                                    </td>
                                    </tr>
                                </ui:repeat>
                            </h:panelGroup>
                        </h:panelGrid>
                    </h:panelGrid>
                    <p:panel rendered="#{!inventarioBean.habEdicion}">
                        <h:panelGrid id="grid2" cellpadding="4" columns="7" style="margin: 0 auto;">
                            <p:outputLabel for="txtIdArticulo" value="Código Artículo:"/>
                            <p:autoComplete id="txtIdArticulo" value="#{inventarioBean.articulosInventarioDTO.articuloDTO}" completeMethod="#{articuloBean.completeArticulo}"
                                var="articuloDTO" itemLabel="#{articuloDTO.code}" itemValue="#{articuloDTO}" converter="articuloDTOConverter" forceSelection="true">
                                <p:ajax event="itemSelect" listener="#{inventarioBean.updatePrecio()}" update="txtPrecioCompra"/> 
                                <p:column>
                                    <h:outputText value="#{articuloDTO.code}"/>
                                </p:column>
                                <p:column>
                                    <h:outputText value="#{articuloDTO.descripcion}"/>
                                </p:column>
                                 <p:column>
                                    <h:outputText value="#{articuloDTO.stock}"/>
                                </p:column>
                                <h:panelGroup rendered="#{not empty articuloDTO.articuloCampos}">
                                <ui:repeat value="#{articuloDTO.articuloCampos}" varStatus="loop" var="label">
                                    <tr>
                                    <td>
                                        <p:outputLabel for="label" value="#{label.valueLabel}:"/>
                                    </td>
                                    </tr>
                                </ui:repeat>
                                </h:panelGroup>
                            </p:autoComplete>
                            <p:outputLabel for="txtPrecioCompra" value="Cantidad:"/>
                            <p:inputText id="txtCantidad" value="#{inventarioBean.articulosInventarioDTO.cantidad}">                      
                                <f:convertNumber type="number"/>
                            </p:inputText>
                            <p:outputLabel for="txtPrecioCompra" value="Precio:"/>
                            <p:inputText id="txtPrecioCompra" value="#{inventarioBean.articulosInventarioDTO.pco}">
                                <f:convertNumber type="currency" currencySymbol=""/>
                            </p:inputText>
                            <p:commandButton id="btnGuardarArticuloInventario" icon="ui-icon-disk" value="Añadir" actionListener="#{inventarioBean.agregarItem()}"  process="@all" update="pnlMain,gwlInventario"/>
                            <p:watermark for="txtIdArticulo" value="buscar..."></p:watermark>
                        </h:panelGrid>
                    </p:panel>
                    <p:dataTable id="table1" value="#{inventarioBean.inventarioDTO.articulosInventario}" var="o">
                            <p:column headerText="Código Articulo">
                                <h:outputText value="#{o.articuloDTO.code}"/>
                            </p:column>
                            <p:column headerText="Cantidad">
                                <h:outputText value="#{o.cantidad}"/>
                            </p:column>
                            <p:column headerText="Precio">
                                <h:outputText value="#{o.pco}"/>
                            </p:column>
                            <p:column headerText="Remover" width="10%" rendered="#{!inventarioBean.habEdicion}">
                            <p:commandButton action="#{inventarioBean.onCancel}" icon="ui-icon-minusthick" update="table1">
                                <f:setPropertyActionListener value="#{o}" target="#{inventarioBean.articulosInventarioDTO}" />
                                <p:confirm header="Confirmación" message="¿Estás seguro?" icon="ui-icon-alert" />
                            </p:commandButton>
                            </p:column>
                        </p:dataTable>
                        <p:confirmDialog global="true" showEffect="fade" hideEffect="explode">
                            <p:commandButton value="Si" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
                            <p:commandButton value="No" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
                        </p:confirmDialog>
                </p:panel>
            </p:fieldset>
        </h:form>
    </ui:define> 

    <ui:define name="dialogos">         
           
    </ui:define> 

</ui:composition>